package com.ilovepostcard.model;

import java.io.Serializable;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;


/**
<pre>
“data”中包含数据集合，其结构如下
"ProductType":1,    //产品类型，1是单张印制，2是套装印制
"OrderID":"111111111",   //订单号
"UserID":10471,      //用户ID
"OrderTime":"2012-10-20T00:00:00",    //订单创建时间
"OrderStatus":1,     //订单状态(1=订单已生成，等待用户付款, 2=用户已付款，产品制作中, 3=订单制作完成，并已发货, 4=订单已取消)
"Items":[    //”items”中是订单明细数据
{
"PostcardID":99999,    //明信片ID
"SendWord":"1111111",     //明信片寄语
"AddressID":0,    //不使用
"AddressName":"111"},      //收件人姓名
{…}
]

</pre>
 */
public class Order implements Serializable {

    private static final long serialVersionUID = -2538094664845704077L;

    public static final int STATUS_FINISHED = 5;
    
    public long OrderID;   //订单号
    public String OrderDetailUrl; //订单详情URL(第三方网页地址)
    public long UserID;      //用户ID
    public String TotalPrice; //订单总价(折扣后，包括运费)
    public String OrderTime;    //订单创建时间
    public String ShippingDate;  //预计发货时间
    public int OrderStatus;     //订单状态(1=订单已生成，2=等待用户付款, 3=订单已取消,4=用户已付款，产品制作中, 5=订单制作完成，并已发货)
//    public OrderItem[] Items;
//    "Items":[    //”items”中是订单明细数据
//    {
//    "PostcardID":99999,    //明信片ID
//    "SendWord":"1111111",     //明信片寄语
//    "AddressID":0,    //不使用
//    "AddressName":"111"},      //收件人姓名
//    {…}
//    ]

    public void setData(JSONObject json) throws JSONException {
//        ProductType = json.getInt("ProductType");
        OrderID = json.getLong("OrderID");
        OrderDetailUrl = json.getString("OrderDetailUrl");
        UserID = json.getLong("UserID");
        TotalPrice = json.getString("TotalPrice");
        OrderTime = json.getString("OrderTime");
        ShippingDate = json.getString("ShippingDate");
        OrderStatus = json.getInt("OrderStatus");
//        if (json.has("Items")) {
//            try {
//                JSONArray itemArray = json.getJSONArray("Items");
//                int size = itemArray.length();
//                Items = new OrderItem[size];
//                for (int i = 0; i < size; i++) {
//                    OrderItem item = new OrderItem();
//                    item.setData(itemArray.getJSONObject(i));
//                    Items[i] = item;
//                }
//            } catch(JSONException e) {
//                
//            }
//        }
    }
    
    public String getStatusText() {
        if (OrderStatus == 2) {
            return "订单已完成";
        }
        else{
            return "订单制作中";
        } 
    }
}
